from util.Route import *
from service import ConfigManagerService
# 获取所有的配置信息(分页 所有信息)
# 获取公共配置
@route("/config/public/all")
def configGetPubilcAll():
    r = ConfigManagerService.getConfigAll('public')
    return R.success(r)
# 获取系统配置
@route("/config/sys/all")
def configGetSysAll():
    r = ConfigManagerService.getConfigAll(['sys','public'])
    return R.success(r)


# 根据key获取用户所有的配置信息
@route("/config/get_by_key")
def configGetKey():
    r = ConfigManagerService.getConfigKey(getUsername())
    return R.success(r)

# 修改配置信息（除了cid）
@route("/config/update/sys", methods = ['POST'])
def configUpdate():
    r = ConfigManagerService.updateSysConfig(request.json)
    if r:
        return R.success(r,"配置信息修改成功")
    else:
        return R.create(400,None,'配置信息修改失败')
    
# 根据key修改配置信息（除了cid）
@route("/config/update/user", methods = ['POST'])
def configUpdateKey():
    k:dict = request.json
    r = ConfigManagerService.updateconfigKey(getUsername(),k)
    if r:
        return R.success(r,"配置信息修改成功")
    else:
        return R.create(400,None,'配置信息修改失败')
